home *** CD-ROM | disk | FTP | other *** search
/ Apple Technical Information Source 1992 September / Apple Tech I.S. 3.0 (Sept-1992).toast / Third Party SW Updates / AppMaker⁄MacApp for MacApp 3 / UAMLibraryM.h < prev   
Encoding:
Text File  |  1991-06-04  |  9.3 KB  |  266 lines  |  [TEXT/MPS ]

  1. // © 1991, Bowers Development Corp.
  2. // UAMLibraryM.h
  3.  
  4. //==========================================================
  5. // Classes to support AppMaker user interface items:        
  6. //                                                            
  7. // Class         (Subclass)        Description                    
  8. //----------------------------------------------------------
  9. // TGrayLine     (TView)        Gray line                    
  10. // TPalette         (TCtlMgr)        Palette                        
  11. // TPictButton     (TCtlMgr)        Picture button                
  12. // TPictCheckBox (TCtlMgr)        Picture check box            
  13. // TPictRadio     (TCtlMgr)        Picture radio button        
  14. // TMultiPict     (TCtlMgr)        Multi-picture control        
  15. // TSlider         (TCtlMgr)        Custom slider                
  16. // TCustom         (TCtlMgr)        Other custom control        
  17. //==========================================================
  18.  
  19. #ifndef __UAMLibraryM__
  20. #define __UAMLibraryM__
  21.  
  22. #ifndef __TYPES__
  23. #include <Types.h>
  24. #endif
  25.  
  26. #ifndef __MACAPPTYPES__
  27. #include <MacAppTypes.h>
  28. #endif
  29.  
  30. #ifndef __UVIEW__
  31. #include <UView.h>
  32. #endif
  33.  
  34. const short kPaletteProcID        =        (200 * 16);            /* 3200 */
  35.  
  36. const short kPictButtonProcID    =        (201 * 16);            /* 3216 */
  37. const short kPictCheckProcID    =        (201 * 16) + 1;        /* 3217 */    
  38. const short kPictRadioProcID    =        (201 * 16) + 2;        /* 3218 */    
  39. const short kMultiPictProcID    =        (201 * 16) + 3;        /* 3219 */    
  40.  
  41. const short kSliderProcID            =    (202 * 16);
  42. const short kSliderGrayContinuousID    =    (202 * 16);            /* 3232 */
  43. const short kSliderIndContinuousID    =    (202 * 16) + 1;        /* 3233 */
  44. const short kSliderGrayDiscreteID    =    (202 * 16) + 2;        /* 3234 */
  45. const short kSliderIndDiscreteID    =    (202 * 16) + 3;        /* 3235 */
  46.  
  47. const short mMultiPictHit        = 101;
  48. const short mPaletteHit            = 102;
  49. const short mCustomHit            = 103;
  50. const short mSliderHit            = 104;
  51.  
  52. //--------------------
  53. pascal void ActionProcForTSlider    (ControlHandle        aCMgrControl,
  54.                                      short                partCode);
  55.  
  56. //--------------------
  57. class TGrayLine : public TView {
  58. public:
  59.     virtual pascal void Draw    (const VRect&        area);        // override;
  60. }; /* TGrayLine */
  61.  
  62. //--------------------
  63. struct PaletteTemplate {
  64.     short        itsPictureID;
  65.     short        itsNumberAcross;
  66.     short        itsNumberDown;
  67.     short        itsFrameSize;
  68. };
  69. typedef PaletteTemplate *PaletteTPtr;
  70.     
  71. //--------------------
  72. class TPalette : public TCtlMgr {
  73. public:
  74.     virtual pascal void IPalette    (TView                *itsSuperView,
  75.                                      const VPoint&        itsLocation, 
  76.                                      const VPoint&        itsSize,
  77.                                      SizeDeterminer        itsHSizeDet, 
  78.                                      SizeDeterminer        itsVSizeDet,
  79.                                      short                itsPictureID,
  80.                                      short                itsNumberAcross,
  81.                                      short                itsNumberDown,
  82.                                      short                itsFrameSize);
  83.     virtual pascal void IRes        (TDocument            *itsDocument,
  84.                                      TView                *itsSuperView,
  85.                                      Ptr&                itsParams);        // Override;                
  86.     virtual pascal void WRes        (ViewRsrcHandle        theResource,
  87.                                      Ptr&                itsParams);        // Override;                
  88.     virtual pascal void WriteRes    (ViewRsrcHandle        theResource,
  89.                                      Ptr&                itsParams);        // Override;                
  90.     virtual pascal void Fields        (TObject*            obj);            // Override;
  91. }; /* TPalette */
  92.  
  93. //--------------------
  94. struct PictControlTemplate {
  95.     Str255        itsPictureIDs;
  96. };
  97. typedef PictControlTemplate *PictControlTPtr;
  98.  
  99. //--------------------
  100. class TPictButton : public TCtlMgr {
  101. public:
  102.     virtual pascal void IPictButton        (TView                *itsSuperView,
  103.                                          const VPoint&        itsLocation, 
  104.                                          const VPoint&        itsSize,
  105.                                          SizeDeterminer        itsHSizeDet, 
  106.                                          SizeDeterminer        itsVSizeDet,
  107.                                          const Str255&        itsPicts);    
  108.     virtual pascal void IRes            (TDocument            *itsDocument,
  109.                                          TView                *itsSuperView,
  110.                                          Ptr&                itsParams);        // Override;                
  111.     virtual pascal void WRes            (ViewRsrcHandle        theResource,
  112.                                          Ptr&                itsParams);        // Override;                
  113.     virtual pascal void WriteRes        (ViewRsrcHandle        theResource,
  114.                                          Ptr&                itsParams);        // Override;                
  115.     virtual pascal void Fields            (TObject*            obj);            // Override;
  116. }; /* TPictButton */
  117.  
  118. //--------------------
  119. class TPictCheckBox    : public TCtlMgr {
  120. public:
  121.     virtual pascal void IPictCheckBox    (TView                *itsSuperView,
  122.                                          const VPoint&        itsLocation, 
  123.                                          const VPoint&        itsSize,
  124.                                          SizeDeterminer        itsHSizeDet, 
  125.                                          SizeDeterminer        itsVSizeDet,
  126.                                          const Str255&        itsPicts,
  127.                                          Boolean            isTurnedOn);    
  128.     virtual pascal void IRes            (TDocument            *itsDocument,
  129.                                          TView                *itsSuperView,
  130.                                          Ptr&                itsParams);        // Override;            
  131.     virtual pascal void WRes            (ViewRsrcHandle        theResource,
  132.                                          Ptr&                itsParams);        // Override;            
  133.     virtual pascal void WriteRes        (ViewRsrcHandle        theResource,
  134.                                          Ptr&                itsParams);        // Override;            
  135.     virtual pascal void DoEvent            (EvtNumber            eventNumber,
  136.                                          TEvtHandler*        source,
  137.                                          TEvent*            event);            // Override;    
  138.     virtual pascal Boolean IsOn            (void);                                // Override;
  139.     virtual pascal void SetState        (Boolean            state,
  140.                                          Boolean            redraw);        // Override;
  141.     virtual pascal void Toggle            (Boolean            redraw);        // Override;
  142.     virtual pascal void ToggleIf        (Boolean            matchState,
  143.                                          Boolean            redraw);        // Override;
  144.     virtual pascal void Fields            (TObject*            obj);            // Override;
  145. }; /* TPictCheckBox */
  146.  
  147. //--------------------
  148. class TPictRadio : public TCtlMgr {
  149. public:
  150.     virtual pascal void IPictRadio    (TView                *itsSuperView,
  151.                                      const VPoint&        itsLocation, 
  152.                                      const VPoint&        itsSize,
  153.                                      SizeDeterminer        itsHSizeDet, 
  154.                                      SizeDeterminer        itsVSizeDet,
  155.                                      const Str255&        itsPicts,
  156.                                      Boolean            isTurnedOn);    
  157.     virtual pascal void IRes        (TDocument            *itsDocument,
  158.                                      TView                *itsSuperView,
  159.                                      Ptr&                itsParams);        // Override;            
  160.     virtual pascal void WRes        (ViewRsrcHandle        theResource,
  161.                                      Ptr&                itsParams);        // Override;            
  162.     virtual pascal void WriteRes    (ViewRsrcHandle        theResource,
  163.                                      Ptr&                itsParams);        // Override;            
  164.     virtual pascal void DoEvent        (EvtNumber            eventNumber,
  165.                                      TEvtHandler*        source,
  166.                                      TEvent*            event);            // Override;    
  167.     virtual pascal Boolean IsOn        (void);                                // Override;
  168.     virtual pascal void SetState    (Boolean            state,
  169.                                      Boolean            redraw);        // Override;
  170.     virtual pascal void Toggle        (Boolean            redraw);        // Override;
  171.     virtual pascal void ToggleIf    (Boolean            matchState,
  172.                                      Boolean            redraw);        // Override;
  173.     virtual pascal void Fields        (TObject*            obj);            // Override;
  174. }; /* TPictRadio */
  175.  
  176. //--------------------
  177. class TMultiPict : public TCtlMgr {
  178. public:
  179.     virtual pascal void IMultiPict    (TView                *itsSuperView,
  180.                                      const VPoint&        itsLocation, 
  181.                                      const VPoint&        itsSize,
  182.                                      SizeDeterminer        itsHSizeDet, 
  183.                                      SizeDeterminer        itsVSizeDet,
  184.                                      const Str255&        itsPicts,
  185.                                      short                curValue);    
  186.     virtual pascal void IRes        (TDocument            *itsDocument,
  187.                                      TView                *itsSuperView,
  188.                                      Ptr&                itsParams);        // Override;            
  189.     virtual pascal void WRes        (ViewRsrcHandle        theResource,
  190.                                      Ptr&                itsParams);        // Override;            
  191.     virtual pascal void WriteRes    (ViewRsrcHandle        theResource,
  192.                                      Ptr&                itsParams);        // Override;            
  193.     virtual pascal void DoEvent        (EvtNumber            eventNumber,
  194.                                      TEvtHandler*        source,
  195.                                      TEvent*            event);        // Override;    
  196.     virtual pascal void Cycle        (Boolean            redraw);        // Override;
  197.     virtual pascal void Fields        (TObject*            obj);            // Override;
  198. }; /* TMultiPict */
  199.  
  200. //--------------------
  201. struct SliderTemplate {
  202.     short        itsVariantCode;
  203.     Str255        itsPictureIDs;
  204. };
  205. typedef SliderTemplate *SliderTPtr;
  206.     
  207. //--------------------
  208. class TSlider : public TCtlMgr {
  209. public:
  210.     VHSelect        fDirection;        // horizontal or vertical
  211.  
  212.     virtual pascal void ISlider        (TView                *itsSuperView,
  213.                                      const VPoint&        itsLocation, 
  214.                                      const VPoint&        itsSize,
  215.                                      SizeDeterminer        itsHSizeDet, 
  216.                                      SizeDeterminer        itsVSizeDet,
  217.                                      VHSelect            itsDirection,
  218.                                      const Str255&        itsPicts,
  219.                                      short                itsProcID,
  220.                                      long                itsVal,
  221.                                      long                itsMin,
  222.                                      long                itsMax);    
  223.     virtual pascal void IRes        (TDocument            *itsDocument,
  224.                                      TView                *itsSuperView,
  225.                                      Ptr&                itsParams);        // Override;            
  226.     virtual pascal void WRes        (ViewRsrcHandle        theResource,
  227.                                      Ptr&                itsParams);        // Override;            
  228.     virtual pascal void WriteRes    (ViewRsrcHandle        theResource,
  229.                                      Ptr&                itsParams);        // Override;            
  230.     virtual pascal void DeltaValue    (VCoordinate        delta);            // Override;
  231.     virtual pascal void DoMouseCommand    (VPoint&            theMouse,
  232.                                          TToolboxEvent*        event,
  233.                                          Point                hysteresis);    // Override;    
  234.     virtual pascal void TrackSlider    (short            partCode);            // Override;
  235.     virtual pascal void ActionProc    (short            partCode);            // Override;
  236.     virtual pascal void Fields        (TObject*            obj);            // Override;
  237. }; /* TSlider */
  238.  
  239. //--------------------
  240. struct CustomControlTemplate {
  241.     short        itsCntlID;
  242. };
  243. typedef CustomControlTemplate *CustomControlTPtr;
  244.     
  245. //--------------------
  246. class TCustom : public TCtlMgr {
  247. public:
  248.     short        fCntlID;
  249.  
  250.     virtual pascal void ICustom        (TView                *itsSuperView,
  251.                                      const VPoint&        itsLocation, 
  252.                                      const VPoint&        itsSize,
  253.                                      SizeDeterminer        itsHSizeDet, 
  254.                                      SizeDeterminer        itsVSizeDet,
  255.                                      short                itsCntlID);    
  256.     virtual pascal void IRes        (TDocument            *itsDocument,
  257.                                      TView                *itsSuperView,
  258.                                      Ptr&                itsParams);        // Override;            
  259.     virtual pascal void WRes        (ViewRsrcHandle        theResource,
  260.                                      Ptr&                itsParams);        // Override;        
  261.     virtual pascal void WriteRes    (ViewRsrcHandle        theResource,
  262.                                      Ptr&                itsParams);        // Override;        
  263.     virtual pascal void Fields        (TObject*            obj);            // Override;
  264. }; /* TCustom */
  265.  
  266. #endif /* UAMLibraryM.h */